<!--<template>-->
<!--  <div class="invoice-create-container">-->
<!--    <div class="page-header">-->
<!--      <h2 class="page-title">创建发票</h2>-->
<!--      <div>-->
<!--        <el-button @click="goBack">返回</el-button>-->
<!--        <el-button :loading="submitting" type="primary" @click="submitForm">保存</el-button>-->
<!--      </div>-->
<!--    </div>-->

<!--    <el-card class="form-card">-->
<!--      <el-form-->
<!--          ref="formRef"-->
<!--          :model="invoiceForm"-->
<!--          :rules="rules"-->
<!--          label-position="right"-->
<!--          label-width="120px"-->
<!--          status-icon-->
<!--      >-->
<!--        <el-divider content-position="left">基本信息</el-divider>-->
<!--        <el-row :gutter="20">-->
<!--          <el-col :span="12">-->
<!--            <el-form-item label="发票编号" prop="invoiceNumber">-->
<!--              <el-input v-model="invoiceForm.invoiceNumber" placeholder="请输入发票编号"></el-input>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--          <el-col :span="12">-->
<!--            <el-form-item label="发票类别" prop="category">-->
<!--              <el-select v-model="invoiceForm.category" placeholder="请选择发票类别" style="width: 100%">-->
<!--                <el-option label="增值税专用发票" value="增值税专用发票"></el-option>-->
<!--                <el-option label="增值税普通发票" value="增值税普通发票"></el-option>-->
<!--                <el-option label="电子发票" value="电子发票"></el-option>-->
<!--                <el-option label="其他" value="其他"></el-option>-->
<!--              </el-select>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--        </el-row>-->

<!--        <el-row :gutter="20">-->
<!--          <el-col :span="12">-->
<!--            <el-form-item label="关联订单" prop="orderId">-->
<!--              <el-select-->
<!--                  v-model="invoiceForm.orderId"-->
<!--                  placeholder="请选择关联订单"-->
<!--                  style="width: 100%"-->
<!--                  @change="handleOrderChange"-->
<!--              >-->
<!--                <el-option-->
<!--                    v-for="item in orderOptions"-->
<!--                    :key="item.id"-->
<!--                    :label="item.orderNumber"-->
<!--                    :value="item.id"-->
<!--                >-->
<!--                  <span style="float: left">{{ item.orderNumber }}</span>-->
<!--                  <span style="float: right; color: #8492a6; font-size: 13px">-->
<!--                    {{ item.supplierName }}-->
<!--                  </span>-->
<!--                </el-option>-->
<!--              </el-select>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--          <el-col :span="12">-->
<!--            <el-form-item label="关联收货单" prop="receiptId">-->
<!--              <el-select-->
<!--                  v-model="invoiceForm.receiptId"-->
<!--                  placeholder="请选择关联收货单"-->
<!--                  style="width: 100%"-->
<!--                  @change="handleReceiptChange"-->
<!--              >-->
<!--                <el-option-->
<!--                    v-for="item in receiptOptions"-->
<!--                    :key="item.id"-->
<!--                    :label="item.receiptNumber"-->
<!--                    :value="item.id"-->
<!--                >-->
<!--                  <span style="float: left">{{ item.receiptNumber }}</span>-->
<!--                  <span style="float: right; color: #8492a6; font-size: 13px">-->
<!--                    {{ item.supplierName }}-->
<!--                  </span>-->
<!--                </el-option>-->
<!--              </el-select>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--        </el-row>-->

<!--        <el-row :gutter="20">-->
<!--          <el-col :span="12">-->
<!--            <el-form-item label="供应商名称" prop="supplierName">-->
<!--              <el-input v-model="invoiceForm.supplierName" placeholder="请输入供应商名称"></el-input>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--          <el-col :span="12">-->
<!--            <el-form-item label="开票日期" prop="issueDate">-->
<!--              <el-date-picker-->
<!--                  v-model="invoiceForm.issueDate"-->
<!--                  placeholder="请选择开票日期"-->
<!--                  style="width: 100%"-->
<!--                  type="date"-->
<!--              ></el-date-picker>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--        </el-row>-->

<!--        <el-row :gutter="20">-->
<!--          <el-col :span="12">-->
<!--            <el-form-item label="购买方信息" prop="purchaserInfo">-->
<!--              <el-input-->
<!--                  v-model="invoiceForm.purchaserInfo"-->
<!--                  :rows="3"-->
<!--                  placeholder="请输入购买方信息"-->
<!--                  type="textarea"-->
<!--              ></el-input>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--          <el-col :span="12">-->
<!--            <el-form-item label="供应商信息" prop="sellerInfo">-->
<!--              <el-input-->
<!--                  v-model="invoiceForm.sellerInfo"-->
<!--                  :rows="3"-->
<!--                  placeholder="请输入供应商信息"-->
<!--                  type="textarea"-->
<!--              ></el-input>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--        </el-row>-->

<!--        <el-row :gutter="20">-->
<!--          <el-col :span="12">-->
<!--            <el-form-item label="开票人" prop="issuer">-->
<!--              <el-input v-model="invoiceForm.issuer" placeholder="请输入开票人"></el-input>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--          <el-col :span="12">-->
<!--            <el-form-item label="发票附件" prop="filePath">-->
<!--              <el-upload-->
<!--                  :before-upload="beforeUpload"-->
<!--                  :http-request="uploadFile"-->
<!--                  :limit="1"-->
<!--                  accept=".pdf,.jpg,.png"-->
<!--                  action="#"-->
<!--              >-->
<!--                <el-button type="primary">上传发票附件</el-button>-->
<!--                <template #tip>-->
<!--                  <div class="el-upload__tip">仅支持PDF、JPG、PNG格式，不超过10MB</div>-->
<!--                </template>-->
<!--              </el-upload>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--        </el-row>-->

<!--        <el-divider content-position="left">发票明细</el-divider>-->
<!--        <el-row>-->
<!--          <el-col :span="24">-->
<!--            <el-button plain type="primary" @click="addDetail">添加明细</el-button>-->
<!--            <el-button :disabled="!selectedDetails.length" plain type="danger" @click="removeSelectedDetails">-->
<!--              删除选中-->
<!--            </el-button>-->
<!--          </el-col>-->
<!--        </el-row>-->

<!--        <el-table-->
<!--            :data="invoiceForm.details"-->
<!--            border-->
<!--            style="width: 100%; margin-top: 15px"-->
<!--            @selection-change="handleSelectionChange"-->
<!--        >-->
<!--          <el-table-column type="selection" width="55"></el-table-column>-->
<!--          <el-table-column label="项目名称" min-width="150" prop="itemName">-->
<!--            <template #default="scope">-->
<!--              <el-form-item :prop="'details.' + scope.$index + '.itemName'"-->
<!--                            :rules="[{ required: true, message: '项目名称不能为空', trigger: 'blur' }]"-->
<!--                            style="margin-bottom: 0; margin-left: 0;">-->
<!--                <el-input v-model="scope.row.itemName" placeholder="项目名称"></el-input>-->
<!--              </el-form-item>-->
<!--            </template>-->
<!--          </el-table-column>-->

<!--          <el-table-column label="规格型号" min-width="120" prop="specificationModel">-->
<!--            <template #default="scope">-->
<!--              <el-form-item :prop="'details.' + scope.$index + '.specificationModel'"-->
<!--                            style="margin-bottom: 0; margin-left: 0;">-->
<!--                <el-input v-model="scope.row.specificationModel" placeholder="规格型号"></el-input>-->
<!--              </el-form-item>-->
<!--            </template>-->
<!--          </el-table-column>-->

<!--          <el-table-column label="单位" prop="unit" width="100">-->
<!--            <template #default="scope">-->
<!--              <el-form-item :prop="'details.' + scope.$index + '.unit'"-->
<!--                            :rules="[{ required: true, message: '单位不能为空', trigger: 'blur' }]"-->
<!--                            style="margin-bottom: 0; margin-left: 0;">-->
<!--                <el-input v-model="scope.row.unit" placeholder="单位"></el-input>-->
<!--              </el-form-item>-->
<!--            </template>-->
<!--          </el-table-column>-->

<!--          <el-table-column label="数量" prop="quantity" width="100">-->
<!--            <template #default="scope">-->
<!--              <el-form-item :prop="'details.' + scope.$index + '.quantity'"-->
<!--                            :rules="[{ required: true, message: '数量不能为空', trigger: 'blur' }]"-->
<!--                            style="margin-bottom: 0; margin-left: 0;">-->
<!--                <el-input-number v-model="scope.row.quantity" :min="0" :precision="2"-->
<!--                                 controls-position="right"-->
<!--                                 style="width: 100%" @change="calculateDetailAmount(scope.$index)"></el-input-number>-->
<!--              </el-form-item>-->
<!--            </template>-->
<!--          </el-table-column>-->

<!--          <el-table-column label="单价" prop="unitPrice" width="120">-->
<!--            <template #default="scope">-->
<!--              <el-form-item :prop="'details.' + scope.$index + '.unitPrice'"-->
<!--                            :rules="[{ required: true, message: '单价不能为空', trigger: 'blur' }]"-->
<!--                            style="margin-bottom: 0; margin-left: 0;">-->
<!--                <el-input-number v-model="scope.row.unitPrice" :min="0" :precision="2"-->
<!--                                 controls-position="right"-->
<!--                                 style="width: 100%" @change="calculateDetailAmount(scope.$index)"></el-input-number>-->
<!--              </el-form-item>-->
<!--            </template>-->
<!--          </el-table-column>-->

<!--          <el-table-column label="金额" prop="amount" width="120">-->
<!--            <template #default="scope">-->
<!--              <el-form-item :prop="'details.' + scope.$index + '.amount'"-->
<!--                            :rules="[{ required: true, message: '金额不能为空', trigger: 'blur' }]"-->
<!--                            style="margin-bottom: 0; margin-left: 0;">-->
<!--                <el-input-number v-model="scope.row.amount" :min="0" :precision="2"-->
<!--                                 controls-position="right"-->
<!--                                 style="width: 100%"></el-input-number>-->
<!--              </el-form-item>-->
<!--            </template>-->
<!--          </el-table-column>-->

<!--          <el-table-column label="税率(%)" prop="taxRate" width="100">-->
<!--            <template #default="scope">-->
<!--              <el-form-item :prop="'details.' + scope.$index + '.taxRate'" style="margin-bottom: 0; margin-left: 0;">-->
<!--                <el-input-number v-model="scope.row.taxRate" :max="100" :min="0" :precision="2"-->
<!--                                 controls-position="right"-->
<!--                                 style="width: 100%" @change="calculateDetailTaxAmount(scope.$index)"></el-input-number>-->
<!--              </el-form-item>-->
<!--            </template>-->
<!--          </el-table-column>-->

<!--          <el-table-column label="税额" prop="taxAmount" width="120">-->
<!--            <template #default="scope">-->
<!--              <el-form-item :prop="'details.' + scope.$index + '.taxAmount'" style="margin-bottom: 0; margin-left: 0;">-->
<!--                <el-input-number v-model="scope.row.taxAmount" :min="0" :precision="2"-->
<!--                                 controls-position="right"-->
<!--                                 style="width: 100%"></el-input-number>-->
<!--              </el-form-item>-->
<!--            </template>-->
<!--          </el-table-column>-->

<!--          <el-table-column fixed="right" label="操作" width="80">-->
<!--            <template #default="scope">-->
<!--              <el-button circle size="small" type="danger" @click="removeDetail(scope.$index)">-->
<!--                <el-icon>-->
<!--                  <Delete/>-->
<!--                </el-icon>-->
<!--              </el-button>-->
<!--            </template>-->
<!--          </el-table-column>-->
<!--        </el-table>-->

<!--        <el-divider content-position="left">金额信息</el-divider>-->
<!--        <el-row :gutter="20">-->
<!--          <el-col :span="8">-->
<!--            <el-form-item label="总金额" prop="totalAmount">-->
<!--              <el-input-number v-model="invoiceForm.totalAmount" :min="0" :precision="2" :readonly="true"-->
<!--                               controls-position="right"-->
<!--                               style="width: 100%"></el-input-number>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--          <el-col :span="8">-->
<!--            <el-form-item label="总税额" prop="totalTax">-->
<!--              <el-input-number v-model="invoiceForm.totalTax" :min="0" :precision="2" :readonly="true"-->
<!--                               controls-position="right"-->
<!--                               style="width: 100%"></el-input-number>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--          <el-col :span="8">-->
<!--            <el-form-item label="价税合计" prop="totalAmountWithTax">-->
<!--              <el-input-number v-model="invoiceForm.totalAmountWithTax" :min="0" :precision="2" :readonly="true"-->
<!--                               controls-position="right"-->
<!--                               style="width: 100%"></el-input-number>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--        </el-row>-->

<!--        <el-row>-->
<!--          <el-col :span="24">-->
<!--            <el-form-item label="备注信息" prop="remarks">-->
<!--              <el-input-->
<!--                  v-model="invoiceForm.remarks"-->
<!--                  :rows="3"-->
<!--                  placeholder="请输入备注信息"-->
<!--                  type="textarea"-->
<!--              ></el-input>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
<!--        </el-row>-->
<!--      </el-form>-->
<!--    </el-card>-->
<!--  </div>-->
<!--</template>-->

<!--<script lang="ts" setup>-->
<!--import {onMounted, reactive, ref, watch} from 'vue';-->
<!--import {useRouter} from 'vue-router';-->
<!--import {ElMessage, ElMessageBox, FormInstance} from 'element-plus';-->
<!--import {Delete} from '@element-plus/icons-vue';-->
<!--import {createInvoice, uploadInvoiceFile} from '@/api/invoice';-->
<!--import {getOrderList} from '@/api/order';-->
<!--import {getReceiptList} from '@/api/receipt';-->
<!--import {Invoice, InvoiceDetail, Order, Receipt} from '@/api/types';-->

<!--const router = useRouter();-->
<!--const formRef = ref<FormInstance>();-->
<!--const submitting = ref(false);-->
<!--const orderOptions = ref<Order[]>([]);-->
<!--const receiptOptions = ref<Receipt[]>([]);-->
<!--const selectedDetails = ref<InvoiceDetail[]>([]);-->

<!--const invoiceForm = reactive<Invoice>({-->
<!--  invoiceNumber: '',-->
<!--  category: '',-->
<!--  issueDate: '',-->
<!--  supplierName: '',-->
<!--  orderId: '',-->
<!--  receiptId: '',-->
<!--  purchaserInfo: '',-->
<!--  sellerInfo: '',-->
<!--  remarks: '',-->
<!--  issuer: '',-->
<!--  filePath: '',-->
<!--  totalAmount: 0,-->
<!--  totalTax: 0,-->
<!--  totalAmountWithTax: 0,-->
<!--  details: []-->
<!--});-->

<!--const rules = {-->
<!--  invoiceNumber: [{required: true, message: '请输入发票编号', trigger: 'blur'}],-->
<!--  category: [{required: true, message: '请选择发票类别', trigger: 'change'}],-->
<!--  issueDate: [{required: true, message: '请选择开票日期', trigger: 'change'}],-->
<!--  supplierName: [{required: true, message: '请输入供应商名称', trigger: 'blur'}]-->
<!--};-->

<!--// 获取订单列表-->
<!--const fetchOrders = async () => {-->
<!--  try {-->
<!--    const res = await getOrderList({pageSize: 100});-->
<!--    if (res.code === 200) {-->
<!--      orderOptions.value = res.data.records;-->
<!--    }-->
<!--  } catch (error) {-->
<!--    console.error('获取订单列表失败', error);-->
<!--  }-->
<!--};-->

<!--// 获取收货单列表-->
<!--const fetchReceipts = async () => {-->
<!--  try {-->
<!--    const res = await getReceiptList({pageSize: 100});-->
<!--    if (res.code === 200) {-->
<!--      receiptOptions.value = res.data.records;-->
<!--    }-->
<!--  } catch (error) {-->
<!--    console.error('获取收货单列表失败', error);-->
<!--  }-->
<!--};-->

<!--// 选择订单时的处理-->
<!--const handleOrderChange = (orderId: string) => {-->
<!--  if (!orderId) return;-->

<!--  const selectedOrder = orderOptions.value.find(item => item.id === orderId);-->
<!--  if (selectedOrder) {-->
<!--    invoiceForm.supplierName = selectedOrder.supplierName;-->

<!--    // 加载关联的收货单-->
<!--    fetchRelatedReceipts(orderId);-->

<!--    // 如果订单有明细项，可以加载到发票明细中-->
<!--    if (selectedOrder.items && selectedOrder.items.length > 0) {-->
<!--      ElMessageBox.confirm('是否从订单导入商品明细?', '提示', {-->
<!--        confirmButtonText: '确定',-->
<!--        cancelButtonText: '取消',-->
<!--        type: 'warning'-->
<!--      }).then(() => {-->
<!--        // 导入订单明细-->
<!--        invoiceForm.details = selectedOrder.items?.map(item => ({-->
<!--          itemName: item.itemName,-->
<!--          specificationModel: item.specification,-->
<!--          unit: item.unit,-->
<!--          quantity: item.quantity,-->
<!--          unitPrice: item.unitPrice,-->
<!--          amount: item.total,-->
<!--          taxRate: 13, // 默认税率-->
<!--          taxAmount: item.total * 0.13 // 默认税额-->
<!--        })) || [];-->

<!--        // 重新计算总金额-->
<!--        calculateTotal();-->
<!--      }).catch(() => {-->
<!--        // 用户取消，不做处理-->
<!--      });-->
<!--    }-->
<!--  }-->
<!--};-->

<!--// 获取与订单关联的收货单-->
<!--const fetchRelatedReceipts = async (orderId: string) => {-->
<!--  try {-->
<!--    const res = await getReceiptList({orderId});-->
<!--    if (res.code === 200) {-->
<!--      receiptOptions.value = res.data.records;-->
<!--    }-->
<!--  } catch (error) {-->
<!--    console.error('获取关联收货单失败', error);-->
<!--  }-->
<!--};-->

<!--// 选择收货单时的处理-->
<!--const handleReceiptChange = (receiptId: string) => {-->
<!--  if (!receiptId) return;-->

<!--  const selectedReceipt = receiptOptions.value.find(item => item.id === receiptId);-->
<!--  if (selectedReceipt) {-->
<!--    // 如果没有设置供应商，则从收货单获取-->
<!--    if (!invoiceForm.supplierName) {-->
<!--      invoiceForm.supplierName = selectedReceipt.supplierName;-->
<!--    }-->

<!--    // 如果收货单有明细项，可以加载到发票明细中-->
<!--    if (selectedReceipt.items && selectedReceipt.items.length > 0) {-->
<!--      ElMessageBox.confirm('是否从收货单导入商品明细?', '提示', {-->
<!--        confirmButtonText: '确定',-->
<!--        cancelButtonText: '取消',-->
<!--        type: 'warning'-->
<!--      }).then(() => {-->
<!--        // 导入收货单明细-->
<!--        invoiceForm.details = selectedReceipt.items?.map(item => ({-->
<!--          itemName: item.itemName,-->
<!--          specificationModel: item.specification,-->
<!--          unit: item.unit,-->
<!--          quantity: item.quantity,-->
<!--          unitPrice: item.unitPrice || item.price, // 兼容处理-->
<!--          amount: item.total || item.amount, // 兼容处理-->
<!--          taxRate: 13, // 默认税率-->
<!--          taxAmount: (item.total || item.amount) * 0.13 // 默认税额-->
<!--        })) || [];-->

<!--        // 重新计算总金额-->
<!--        calculateTotal();-->
<!--      }).catch(() => {-->
<!--        // 用户取消，不做处理-->
<!--      });-->
<!--    }-->
<!--  }-->
<!--};-->

<!--// 添加发票明细-->
<!--const addDetail = () => {-->
<!--  invoiceForm.details?.push({-->
<!--    itemName: '',-->
<!--    specificationModel: '',-->
<!--    unit: '',-->
<!--    quantity: 1,-->
<!--    unitPrice: 0,-->
<!--    amount: 0,-->
<!--    taxRate: 13,-->
<!--    taxAmount: 0-->
<!--  });-->
<!--};-->

<!--// 移除发票明细-->
<!--const removeDetail = (index: number) => {-->
<!--  invoiceForm.details?.splice(index, 1);-->
<!--  calculateTotal();-->
<!--};-->

<!--// 移除选中的明细项-->
<!--const removeSelectedDetails = () => {-->
<!--  if (selectedDetails.value.length === 0) return;-->

<!--  ElMessageBox.confirm(`确认删除选中的 ${selectedDetails.value.length} 项明细?`, '提示', {-->
<!--    confirmButtonText: '确定',-->
<!--    cancelButtonText: '取消',-->
<!--    type: 'warning'-->
<!--  }).then(() => {-->
<!--    // 获取要保留的明细项-->
<!--    if (invoiceForm.details) {-->
<!--      const selectedIds = selectedDetails.value.map(item => item.id);-->
<!--      invoiceForm.details = invoiceForm.details.filter(item => !selectedIds.includes(item.id));-->
<!--    }-->
<!--    calculateTotal();-->
<!--  }).catch(() => {-->
<!--    // 用户取消，不做处理-->
<!--  });-->
<!--};-->

<!--// 表格选择变化-->
<!--const handleSelectionChange = (selection: InvoiceDetail[]) => {-->
<!--  selectedDetails.value = selection;-->
<!--};-->

<!--// 计算明细金额-->
<!--const calculateDetailAmount = (index: number) => {-->
<!--  if (!invoiceForm.details) return;-->

<!--  const detail = invoiceForm.details[index];-->
<!--  if (detail.quantity && detail.unitPrice) {-->
<!--    detail.amount = detail.quantity * detail.unitPrice;-->

<!--    // 如果有税率，计算税额-->
<!--    if (detail.taxRate) {-->
<!--      calculateDetailTaxAmount(index);-->
<!--    }-->
<!--  }-->

<!--  calculateTotal();-->
<!--};-->

<!--// 计算明细税额-->
<!--const calculateDetailTaxAmount = (index: number) => {-->
<!--  if (!invoiceForm.details) return;-->

<!--  const detail = invoiceForm.details[index];-->
<!--  if (detail.amount && detail.taxRate) {-->
<!--    detail.taxAmount = detail.amount * (detail.taxRate / 100);-->
<!--  }-->

<!--  calculateTotal();-->
<!--};-->

<!--// 计算发票总金额-->
<!--const calculateTotal = () => {-->
<!--  if (!invoiceForm.details || invoiceForm.details.length === 0) {-->
<!--    invoiceForm.totalAmount = 0;-->
<!--    invoiceForm.totalTax = 0;-->
<!--    invoiceForm.totalAmountWithTax = 0;-->
<!--    return;-->
<!--  }-->

<!--  // 总金额 = 所有明细金额之和-->
<!--  invoiceForm.totalAmount = invoiceForm.details.reduce((sum, item) => sum + (item.amount || 0), 0);-->

<!--  // 总税额 = 所有明细税额之和-->
<!--  invoiceForm.totalTax = invoiceForm.details.reduce((sum, item) => sum + (item.taxAmount || 0), 0);-->

<!--  // 价税合计 = 总金额 + 总税额-->
<!--  invoiceForm.totalAmountWithTax = invoiceForm.totalAmount + invoiceForm.totalTax;-->
<!--};-->

<!--// 上传前验证-->
<!--const beforeUpload = (file: File) => {-->
<!--  // 验证文件类型-->
<!--  const validTypes = ['application/pdf', 'image/jpeg', 'image/png'];-->
<!--  if (!validTypes.includes(file.type)) {-->
<!--    ElMessage.error('仅支持PDF、JPG、PNG格式文件');-->
<!--    return false;-->
<!--  }-->

<!--  // 验证文件大小-->
<!--  const maxSize = 10 * 1024 * 1024; // 10MB-->
<!--  if (file.size > maxSize) {-->
<!--    ElMessage.error('文件大小不能超过10MB');-->
<!--    return false;-->
<!--  }-->

<!--  return true;-->
<!--};-->

<!--// 自定义上传-->
<!--const uploadFile = async (options: any) => {-->
<!--  try {-->
<!--    const res = await uploadInvoiceFile(options.file);-->
<!--    if (res.code === 200) {-->
<!--      invoiceForm.filePath = res.data.filePath;-->
<!--      ElMessage.success('上传成功');-->
<!--    } else {-->
<!--      ElMessage.error(res.message || '上传失败');-->
<!--    }-->
<!--  } catch (error) {-->
<!--    console.error('上传失败', error);-->
<!--    ElMessage.error('上传失败');-->
<!--  }-->
<!--};-->

<!--// 返回上一页-->
<!--const goBack = () => {-->
<!--  router.back();-->
<!--};-->

<!--// 提交表单-->
<!--const submitForm = async () => {-->
<!--  if (!formRef.value) return;-->

<!--  try {-->
<!--    await formRef.value.validate();-->

<!--    // 验证发票明细-->
<!--    if (!invoiceForm.details || invoiceForm.details.length === 0) {-->
<!--      ElMessage.error('请添加至少一条发票明细');-->
<!--      return;-->
<!--    }-->

<!--    // 确保明细数据有效-->
<!--    for (const detail of invoiceForm.details) {-->
<!--      if (!detail.itemName || !detail.unit || !detail.quantity || !detail.unitPrice || !detail.amount) {-->
<!--        ElMessage.error('请完善发票明细信息');-->
<!--        return;-->
<!--      }-->

<!--      // 同步字段，确保数据一致性-->
<!--      if (detail.specification && !detail.specificationModel) {-->
<!--        detail.specificationModel = detail.specification;-->
<!--      }-->
<!--      if (detail.price && !detail.unitPrice) {-->
<!--        detail.unitPrice = detail.price;-->
<!--      }-->
<!--      if (detail.totalAmount && !detail.amount) {-->
<!--        detail.amount = detail.totalAmount;-->
<!--      }-->
<!--    }-->

<!--    submitting.value = true;-->

<!--    // 发送请求-->
<!--    const res = await createInvoice(invoiceForm);-->
<!--    if (res.code === 200) {-->
<!--      ElMessage.success('创建发票成功');-->
<!--      router.push('/invoice/list');-->
<!--    } else {-->
<!--      ElMessage.error(res.message || '创建发票失败');-->
<!--    }-->
<!--  } catch (error) {-->
<!--    console.error('表单验证失败', error);-->
<!--    ElMessage.error('表单验证失败');-->
<!--  } finally {-->
<!--    submitting.value = false;-->
<!--  }-->
<!--};-->

<!--// 监听明细变更，自动计算金额-->
<!--watch(() => invoiceForm.details, () => {-->
<!--  calculateTotal();-->
<!--}, {deep: true});-->

<!--onMounted(() => {-->
<!--  fetchOrders();-->
<!--  fetchReceipts();-->
<!--});-->
<!--</script>-->

<!--<style scoped>-->
<!--.invoice-create-container {-->
<!--  padding: 20px;-->
<!--}-->

<!--.page-header {-->
<!--  display: flex;-->
<!--  justify-content: space-between;-->
<!--  align-items: center;-->
<!--  margin-bottom: 20px;-->
<!--}-->

<!--.page-title {-->
<!--  font-size: 20px;-->
<!--  font-weight: 600;-->
<!--  margin: 0;-->
<!--}-->

<!--.form-card {-->
<!--  margin-bottom: 20px;-->
<!--}-->

<!--:deep(.el-form-item__content) {-->
<!--  margin-left: 0 !important;-->
<!--}-->

<!--/* 优化数字输入框样式 */-->
<!--:deep(.el-input-number .el-input__wrapper) {-->
<!--  padding-right: 30px !important;-->
<!--}-->

<!--:deep(.el-input-number__increase),-->
<!--:deep(.el-input-number__decrease) {-->
<!--  z-index: 2 !important;-->
<!--}-->

<!--:deep(.el-table .el-input-number) {-->
<!--  width: 100%;-->
<!--}-->

<!--:deep(.el-table .cell) {-->
<!--  padding: 0 5px !important;-->
<!--}-->
<!--</style>-->